#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
#include <sys/wait.h>
#include <stdlib.h>

//int main()
//{
//    char* const myenv[] = {
//        "MYVAL1=111111111111111",
//        "MYVAL2=111111111111111",
//        "MYVAL3=111111111111111",
//        "MYVAL4=111111111111111",
//        NULL
//    };
//    printf("pid: %d, execl command begin!\n",getpid()); 
//    execle("./mytest", "mytest", "a", "b", NULL, myenv);   //覆盖式传递环境变量
//    //execle("./mytest", "mytest", "a", "b", NULL, environ);  
//    printf("pid: %d, execl command end!\n",getpid()); 
//    return 0;
//}

extern char** environ;
int main()
{
    char* env_val = "MYVAL=55555555555555555555555555";
    putenv(env_val);
    printf("pid: %d, execl command begin!\n",getpid()); 
    execle("./mytest", "mytest", "a", "b", NULL, environ);  
    printf("pid: %d, execl command end!\n",getpid()); 
    return 0;
}



